As mobile devices have become more capable and common, there has been increased use of and reliance on mobile applications (i.e., applications on the mobile devices). The number of applications, types of functionality, and amount of content provided by these applications has exploded. Further, new applications as well as updated versions of existing applications with new content are added every day.
Most application developers publish a list of instructions to control or configure the application in different ways. For example, many ANDROID applications include or are associated with an application manifest. The manifest includes information that the operating system may require before the application is executed. The manifest may also identify intents that may configure the application to reach desired content from the application. An intent in ANDROID is a messaging object that can be used to request an action from another application (or a component of an application).
Unfortunately, as applications have gotten more complex and the information provided by applications has grown, there may be any number of intents and different configurations that are not published by the application developer. The task of identifying intents and different application configurations is often too onerous and burdensome on the application developer.